home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / bin / nroff < prev    next >
Text File  |  2009-08-18  |  3KB  |  141 lines

  1. #! /bin/sh
  2. # Emulate nroff with groff.
  3. #
  4. # Copyright (C) 1992, 1993, 1994, 1999, 2000, 2001, 2002, 2003,
  5. #               2004, 2005, 2007, 2009
  6. #   Free Software Foundation, Inc.
  7. #
  8. # Written by James Clark, maintained by Werner Lemberg.
  9.  
  10. # This file is of `groff'.
  11.  
  12. # `groff' is free software; you can redistribute it and/or modify it
  13. # under the terms of the GNU General Public License (GPL) as published
  14. # by the Free Software Foundation, either version 3 of the License, or
  15. # (at your option) any later version.
  16.  
  17. # `groff' is distributed in the hope that it will be useful, but
  18. # WITHOUT ANY WARRANTY; without even the implied warranty of
  19. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  20. # General Public License for more details.
  21.  
  22. # You should have received a copy of the GNU General Public License
  23. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  24.  
  25. unset IFS
  26.  
  27. prog="$0"
  28.  
  29. # Default device.
  30.  
  31. # Check the GROFF_TYPESETTER environment variable.
  32. Tenv=$GROFF_TYPESETTER
  33.  
  34. # Try the `locale charmap' command first because it is most reliable.
  35. # On systems where it doesn't exist, look at the environment variables.
  36. case "`exec 2>/dev/null ; locale charmap`" in
  37.   UTF-8)
  38.     Tloc=utf8 ;;
  39.   ISO-8859-1 | ISO-8859-15)
  40.     Tloc=latin1 ;;
  41.   IBM-1047)
  42.     Tloc=cp1047 ;;
  43.   *)
  44.     case "${LC_ALL-${LC_CTYPE-${LANG}}}" in
  45.       *.UTF-8)
  46.         Tloc=utf8 ;;
  47.       iso_8859_1 | *.ISO-8859-1 | *.ISO8859-1 | \
  48.       iso_8859_15 | *.ISO-8859-15 | *.ISO8859-15)
  49.         Tloc=latin1 ;;
  50.       *.IBM-1047)
  51.         Tloc=cp1047 ;;
  52.       *)
  53.         case "$LESSCHARSET" in
  54.           utf-8)
  55.             Tloc=utf8 ;;
  56.           latin1)
  57.             Tloc=latin1 ;;
  58.           cp1047)
  59.             Tloc=cp1047 ;;
  60.           *)
  61.             Tloc=ascii ;;
  62.         esac ;;
  63.     esac ;;
  64. esac
  65.  
  66. # `for i; do' doesn't work with some versions of sh
  67.  
  68. Topt=
  69. opts=
  70. for i
  71.   do
  72.   case $1 in
  73.     -c)
  74.       opts="$opts -P-c" ;;
  75.     -h)
  76.       opts="$opts -P-h" ;;
  77.     -[eq] | -s*)
  78.       # ignore these options
  79.       ;;
  80.     -[dMmrnoTwW])
  81.       echo "$prog: option $1 requires an argument" >&2
  82.       exit 1 ;;
  83.     -[iptSUC] | -[dMmrnowW]*)
  84.       opts="$opts $1" ;;
  85.     -T*)
  86.       Topt=$1 ;;
  87.     -u*)
  88.       # Solaris 2.2 through at least Solaris 9 `man' invokes
  89.       # `nroff -u0 ... | col -x'.  Ignore the -u0,
  90.       # since `less' and `more' can use the emboldening info.
  91.       # However, disable SGR, since Solaris `col' mishandles it.
  92.       opts="$opts -P-c" ;;
  93.     -v | --version)
  94.       echo "GNU nroff (groff) version 1.20.1"
  95.       exit 0 ;;
  96.     --help)
  97.       echo "usage: nroff [-CchipStUv] [-dCS] [-MDIR] [-mNAME] [-nNUM] [-oLIST]"
  98.       echo "             [-rCN] [-Tname] [-WNAME] [-wNAME] [FILE...]"
  99.       exit 0 ;;
  100.     --)
  101.       shift
  102.       break ;;
  103.     -)
  104.       break ;;
  105.     -*)
  106.       echo "$prog: invalid option $1" >&2
  107.       exit 1 ;;
  108.     *)
  109.       break ;;
  110.   esac
  111.   shift
  112. done
  113.  
  114. if test "x$Topt" != x ; then
  115.   T=$Topt
  116. else
  117.   if test "x$Tenv" != x ; then
  118.     T=-T$Tenv
  119.   fi
  120. fi
  121.  
  122. case $T in
  123.   -Tascii | -Tlatin1 | -Tutf8 | -Tcp1047)
  124.     ;;
  125.   *)
  126.     # ignore other devices and use locale fallback
  127.     T=-T$Tloc ;;
  128. esac
  129.  
  130. # Set up the `GROFF_BIN_PATH' variable
  131. # to be exported in the current `GROFF_RUNTIME' environment.
  132.  
  133. GROFF_RUNTIME="${GROFF_BIN_PATH=/usr/bin}:"
  134. export GROFF_BIN_PATH
  135.  
  136. # Load nroff-style character definitions too.
  137.  
  138. PATH="$GROFF_RUNTIME$PATH" groff -mtty-char $T $opts ${1+"$@"}
  139.  
  140. # eof
  141.